# 定义集合

my_set = {"传智教育","黑马程序员","itheima","传智教育","黑马程序员","itheima","传智教育","黑马程序员","itheima"}
my_set_empty = set()
print(f"my_set的内容是：{my_set},类型是：{type(my_set)}")
print(f"my_set_empty的内容是：{my_set_empty},类型是：{type(my_set_empty)}")

# 添加新元素
my_set.add("Python")
my_set.add("传智教育")
print(f"添加元素后结果是：{my_set}")


# 移除元素
my_set.remove("黑马程序员")
print(f"移除后结果是：{my_set}")


# 随机取出一个元素
my_set = {"传智教育","黑马程序员","itheima"}
element = my_set.pop() 
print(f"集合被取出元素是：{element},取出元素后：{my_set}")

# 清空集合
my_set.clear()
print(f"清空后：{my_set}")


# 取两个集合的差集
set1 = {1,2,3}
set2 = {1,5,6}
set3 = set1.difference(set2)
print(f"取出差集后的结果是：{set3}")
print(f"取出差集后，原有set1的内容是：{set1}")
print(f"取出差集后，原有set2的内容是：{set2}")

# 消除差集 在集合1内，删除和集合2 相同的元素
# 结果：集合1被修改，集合2不变
set1 = {1,2,3}
set2 = {1,5,6}
set3 = set1.difference_update(set2)

print(f"消除差集后，原有set1的内容是：{set1}")
print(f"消除差集后，原有set2的内容是：{set2}")

# 两个集合合并
set1 = {1,2,3}
set2 = {1,5,6}

set3 = set1.union(set2)

print(f"合并之后set3结果为：{set3}")


# 统计集合元素的数量

set1 = {1,2,3,4,5,1,2,3,4,5} # 会消除相同的元素
num = len(set1)
print(f"set1元素的数量为：{num}")

# 集合遍历
# 集合不支持下标索引 不能用while循环 但是可以用 for 循环
for x in set1:
    print(x,end = ' ')



